// 链接：https://ac.nowcoder.com/acm/problem/22202
// 来源：牛客网
//
// 题目描述
// 输入一串字符，以“?”结束。统计其中字母个数，数字个数，其它符号个数。
//
//
// 输入描述:
// 输入一行，包含若干个字符，以”?”结尾。
// 输出描述:
// 输出三行，每行包含一个整数，依次为字母个数，数字个数，其他符号个数。
// 示例1
// 输入
// 复制
// ab123!?
// 输出
// 复制
// Letters=2
// Digits=3
// Others=1
//______________________第一种________________________
// #include <stdio.h>
// #include <ctype.h>
//
// int main() {
//     char a[1000]; // 假设最多输入1000个字符
//     int Letters = 0, Digits = 0, Others = 0;
//
//     // 输入字符直到遇到 '?'
//     int i = 0;
//     while (1) {
//         char ch;
//         scanf("%c", &ch); // 用 %c 逐字符读取
//         if (ch == '?') {  // 遇到 '?' 停止读取
//             break;
//         }
//         a[i++] = ch; // 存入数组
//     }
//
//     // 遍历数组并统计
//     for (int j = 0; j < i; j++) {
//         if (isalpha(a[j])) { // 字母
//             Letters++;
//         } else if (isdigit(a[j])) { // 数字
//             Digits++;
//         } else { // 其他符号
//             Others++;
//         }
//     }
//
//     // 输出统计结果
//     printf("Letters=%d\n", Letters);
//     printf("Digits=%d\n", Digits);
//     printf("Others=%d\n", Others);
//
//     return 0;
// }
//_______________第二种_______________________________
#include <stdio.h>
#include <ctype.h>

// int main() {
//     char c;
//     int letters = 0, digits = 0, others = 0;
//
//     // 逐字符读取
//     while ((c = getchar()) != '?') {
//         if (isalpha(c)) { // 判断是否为字母
//             letters++;
//         } else if (isdigit(c)) { // 判断是否为数字
//             digits++;
//         } else { // 其他符号
//             others++;
//         }
//     }
//
//     // 按格式输出结果
//     printf("Letters=%d\n", letters);
//     printf("Digits=%d\n", digits);
//     printf("Others=%d\n", others);
//
//     return 0;
// }
